import COS from 'cos-js-sdk-v5';
// SECRETID 和 SECRETKEY请登录 https://console.cloud.tencent.com/cam/capi 进行查看和管理
const cos = new COS({
  SecretId: 'AKIDSjkUxB8tPfdKlwqTpwlJabLo0wc190bv',
  SecretKey: '4sRjjSu62h6HBpCJ9iz0mHVS8YhaDZeS'
})

export function uploadFile(file: any, {schedule = (obj: any) => { }, success = (obj: any) => { }, error = (obj: any) => { }}) {
  let time = new Date()
  let year = time.getFullYear()
  let month = time.getMonth() + 1
  let months = month < 10 ? '0'+ month : month
  cos.uploadFile({
      Bucket: 'gx-1258001656', /* 填写自己的 bucket，必须字段 */
      Region: 'ap-guangzhou',     /* 存储桶所在地域，必须字段 */
      Key: `shipu/${year}/${months}/${file.name}.jpg`,              /* 存储在桶里的对象键（例如:1.jpg，a/b/test.txt，图片.jpg）支持中文，必须字段 */
      Body: file, // 上传文件对象
      SliceSize: 1024 * 1024 * 5,     /* 触发分块上传的阈值，超过5MB使用分块上传，小于5MB使用简单上传。可自行设置，非必须 */
    onProgress: function (progressData) {
        schedule(progressData)
          // console.log(JSON.stringify(progressData),'进度');
      }
  }, function(err, data) {
      if (err) {
        // console.log('上传失败', err);
        error(err)
      } else {
        // console.log('上传成功', data);
        success(data)
      }
  });
}

// export const uploadFile = (param:any) => {
//   cos.putObject({
//         // 存储桶名
//         Bucket: 'gx-1258001656',
//         // 存储桶所在地域
//         Region: 'ap-guangzhou',
//         // 上传后的文件名
//         Key: param.name,
//         // 固定写法,表示标准存储
//         StorageClass: 'STANDARD',
//         // 要上传的文件对象(文件体)
//         Body: param,
//         onProgress: (progressData) => {
//           // console.log(JSON.stringify(progressData))
//           console.log(progressData,'进度')
//           // this.percent = progressData.percent * 100
//           // 上传进度
//         }
//       }, (err, data) => {
//     console.log(err || data,'回调')
//     // 回调
//         // this.fileList[0].url = 'http://' + data.Location
//         // this.fileList[0].status = 'success'
//         setTimeout(() => {
//           // this.isShoeProgress = false
//         }, 1000)
//       })
// }